/*
 * FilePath     : \src\i18n\index.ts
 * Author       : SJZ
 * Date         : 2025-03-12 19:28
 * LastEditors  : SJZ
 * LastEditTime : 2025-03-12 20:13
 * Description  : 语言国际化
 * CodeIterationRecord: 
 */

// 引入common工具类
import common from "@/utils/common";
// 引入i18n模块
import { createI18n } from "vue-i18n";
// 引入element-ui英文语言包
import elementEnLocale from "element-plus/es/locale/lang/en";
// 引入element-ui中文简体语言包
import elementZhLocale from "element-plus/es/locale/lang/zh-CN";
// 引入本地英文语言包
import enLoccal from "./lang/en";
// 引入本地中文简体语言包
import zhLoccal from "./lang/zh";

// 引入语言包
const messages = {
  // 英文语言包
  en: {
    ...enLoccal,
    ...elementEnLocale
  },
  // 中文简体语言包
  zh: {
    ...zhLoccal,
    ...elementZhLocale
  }
};
// 创建国际化实例
export const i18n = createI18n({
  legacy: false,
  globalInjection: true,
  // 取localStorage中的语言，取不到默认中文简体
  locale: common.storage("common")?.language?.languageCode || "zh",
  messages
});
const { tm } = i18n.global;
export const $t = (key: string) => {
  return tm(key);
};
